package top.infopub.job.fia.service;


import top.infopub.generic.GenericService;
import top.infopub.model.fia.FeeNote;

import java.math.BigDecimal;
import java.util.Map;


public interface FeeNoteService extends GenericService<FeeNote, String> {

    /** codegen **/

//    /**
//     * 查询某个项目  3. 融资息差：
//     * <br/>（财务-【付款单登记表】支出类型-建设期利息{实付金额}+财务-【付款单登记表】支出类型-融资费用{实付金额}+财务-【付款单登记表】支出类型-融资担保费{实付金额}）/【融资放款单】{加权平均综合成本}*（商务-【承继协议】{建设期融资利率}—融资-【融资放款单】{加权平均综合成本}）（*统计时间：付款日期，原始单位：元）
//     * <br/>【承继协议】{建设期融资利率}：取值项目最新版本【承继协议】
//     * <br/>【融资放款-加权平均综合成本】：截止统计月份末，该项目所有【融资放款】中{综合成本}加权平均值：合计（综合成本*放款明细总额）/合计（放款明细总额）
//     * @param where stsMonth，hrOrgProId
//     * @return
//     * @see
//     */
//    BigDecimal selectProQaOfFinSpread(Date dateStart, Date dateEnd, String hrOrgProId,
//                                      String proCode);

    /**
     * 查询某个项目  4. 管理费用：财务-【费用登记表】登记类型-管理费用{费用总额}（*统计时间：费用期间，原始单位：元）
     * @param where stsMonth，hrOrgProId
     * @return 
     * @see
     */
    BigDecimal selectProQaOfManageFee(Map<String, Object> where);

    /**
     * 查询某个项目  5. 财务费用：财务-【费用登记表】登记类型-财务费用{费用总额}（*统计时间：费用期间，原始单位：元）
     * @param where stsMonth，hrOrgProId
     * @return 
     * @see
     */
    BigDecimal selectProQaOfFiaFee(Map<String, Object> where);
    
    /**
     * 查询某个项目  4. 管理费用：财务-【费用登记表】登记类型-财务费用{费用总额}（*统计时间：费用期间，原始单位：元）
     * @param where stsMonth，hrOrgProId
     * @return 
     * @see
     */
    BigDecimal selectProQaOfManageFeeOne(Map<String, Object> where);

}